<<<<<<< .mine
﻿#region using statements

using System;

using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

using NGen;
using NGen.Managers.GUI;
using NGen.Managers.GameState;

using Nuclex.UserInterface;
using Nuclex.UserInterface.Controls;
using Nuclex.UserInterface.Controls.Desktop;

//using Psych.Misc;
using Psych.States;

#endregion

namespace Psych.GUILayouts
{
    /// <summary>
    /// 	Gui used in the setup state
    /// </summary>
    public class GUIElementSetupStateLayout : GUIElement
    {
        #region local fields

        //this button is used as a background, is not active
        private readonly ButtonControl m_backButton = new ButtonControl();

        private readonly ButtonControl m_background = new ButtonControl();

        private readonly ListControl m_levelList = new ListControl();

        private readonly LabelControl m_levelListLabel = new LabelControl();

        private readonly ListControl m_locationList = new ListControl();

        private readonly LabelControl m_locationListLabel = new LabelControl();

        private readonly ButtonControl m_startButton = new ButtonControl();


        /// <summary>
        /// 	The image of the selected map
        /// </summary>
        private Texture2D m_mapImage;

        /// <summary>
        /// 	Object to store the options selected
        /// </summary>
        //private GameOptions m_options = new GameOptions();

        #endregion

        #region GUIElement implementation

        /// <summary>
        /// 	_Initialize this gui
        /// </summary>
        protected override void _Initialize()
        {
            //get the options service if it exists, create it otherwise
           // m_options = GameEngine.GetService<GameOptions>() ?? new GameOptions();
           
            //create the gui 
            m_background.Bounds = new UniRectangle(90, 90, 640, 360);
            m_background.Enabled = false;
            
        }

        /// <summary>
        /// 	Called when the start button is clicked
        /// </summary>
        private void _StartButtonPressed(object p_sender, EventArgs p_e)
        {
            //add the options to the services so they are available
           
            //go to the play state
            GameEngine.GetService<IManagerGameState>().ChangeState(new GameStatePlay());
        }

        /// <summary>
        /// 	Called when the back button is clicked
        /// </summary>
        private void _BackButtonPressed(object p_sender, EventArgs p_e)
        {
            
        }

        /// <summary>
        /// 	Called whenever the list selection is changed
        /// </summary>
        private void _LevelListSelectionChanged(object p_sender, EventArgs p_e)
        {
            //get the name of the map based on the selection
            
            //load the new map image
            m_mapImage = GameEngine.GameContent.Load<Texture2D>("Content\\Textures\\Level\\testmap.png");
          
        }

        /// <summary>
        /// 	Update this gui
        /// </summary>
        /// <param name = "p_gameTime">snapshot of timing values</param>
        protected override void Update(GameTime p_gameTime)
        {
            //no updates are necessary
        }

        /// <summary>
        /// 	_Draw this gui
        /// </summary>
        /// <param name = "p_gameTime">snapshot of timing values</param>
        protected override void _Draw(GameTime p_gameTime)
        {
            //draw the map image
           // GameEngine.SpriteBatch.Draw(m_mapImage,new Rectangle((int)m_background.Bounds.Left.Offset + 310, (int)m_background.Bounds.Top.Offset + 30, 300, 300), Color.White);
        }

        /// <summary>
        /// 	Cleanup this gui
        /// </summary>
        protected override void _Cleanup() { }

        #endregion
    }
}=======
﻿#region using statements

using System;

using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

using NGen;
using NGen.Managers.GUI;
using NGen.Managers.GameState;

using Nuclex.UserInterface;
using Nuclex.UserInterface.Controls;
using Nuclex.UserInterface.Controls.Desktop;

//using Psych.Misc;
using Psych.States;

#endregion

namespace Psych.GUILayouts
{
    /// <summary>
    /// 	Gui used in the setup state
    /// </summary>
    public class GUIElementSetupStateLayout : GUIElement
    {
        #region local fields

        //this button is used as a background, is not active
        private readonly ButtonControl m_backButton = new ButtonControl();

        private readonly ButtonControl m_background = new ButtonControl();

        private readonly ListControl m_levelList = new ListControl();

        private readonly LabelControl m_levelListLabel = new LabelControl();

        private readonly ListControl m_locationList = new ListControl();

        private readonly LabelControl m_locationListLabel = new LabelControl();

        private readonly ButtonControl m_startButton = new ButtonControl();

        #endregion

        #region GUIElement implementation

        /// <summary>
        /// 	_Initialize this gui
        /// </summary>
        protected override void _Initialize()
        {
            //get the options service if it exists, create it otherwise
           
            //create the gui 
            
        }

        /// <summary>
        /// 	Called when the start button is clicked
        /// </summary>
        private void _StartButtonPressed(object p_sender, EventArgs p_e)
        {
            //add the options to the services so they are available
           
            //go to the play state
          
        }

        /// <summary>
        /// 	Called when the back button is clicked
        /// </summary>
        private void _BackButtonPressed(object p_sender, EventArgs p_e)
        {
            
        }

        /// <summary>
        /// 	Called whenever the list selection is changed
        /// </summary>
        private void _LevelListSelectionChanged(object p_sender, EventArgs p_e)
        {
            //get the name of the map based on the selection
            
            //load the new map image
          
        }

        /// <summary>
        /// 	Update this gui
        /// </summary>
        /// <param name = "p_gameTime">snapshot of timing values</param>
        protected override void Update(GameTime p_gameTime)
        {
            //no updates are necessary
        }

        /// <summary>
        /// 	_Draw this gui
        /// </summary>
        /// <param name = "p_gameTime">snapshot of timing values</param>
        protected override void _Draw(GameTime p_gameTime)
        {
            //draw the map image
        }

        /// <summary>
        /// 	Cleanup this gui
        /// </summary>
        protected override void _Cleanup() { }

        #endregion
    }
}>>>>>>> .r47
